.leaflet-animation-point,
.leaflet-animation-point:after,
.leaflet-animation-point:before,
.leaflet-animation-point p,
.leaflet-animation-point p:after,
.leaflet-animation-point p:before {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.leaflet-animation-point {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1px solid hsla(0, 0%, 100%, .5);
    cursor: pointer;
    color: #0ff;
    background: currentColor;
    z-index: 3;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    box-shadow: 0 0 2em currentColor, 0 0 .5em currentColor;
    position: absolute
}

.leaflet-animation-point.mapError {
    color: red
}

.leaflet-animation-point.mapWarn {
    color: #b5a603
}

.leaflet-animation-point.mapSuccess {
    color: #239233
}

.leaflet-animation-point.mapOrange {
    color: #8c4d34
}

.leaflet-animation-point:after,
.leaflet-animation-point:before,
.leaflet-animation-point p:after,
.leaflet-animation-point p:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.leaflet-animation-point:after,
.leaflet-animation-point:before {
    border: 1px solid;
    -webkit-animation: leaflet-mapAni 1s ease infinite;
    -moz-animation: leaflet-mapAni 1s ease infinite;
    -o-animation: leaflet-mapAni 1s ease infinite;
    -ms-animation: leaflet-mapAni 1s ease infinite;
    animation: leaflet-mapAni 1s ease infinite
}

.leaflet-animation-point p:before {
    border: 1px solid
}

.leaflet-animation-point p {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: leaflet-mapAni 2s ease infinite;
    -moz-animation: leaflet-mapAni 2s ease infinite;
    -o-animation: leaflet-mapAni 2s ease infinite;
    -ms-animation: leaflet-mapAni 2s ease infinite;
    animation: leaflet-mapAni 2s ease infinite
}

@-webkit-keyframes leaflet-mapAni {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
        filter: alpha(opacity=1)
    }
    25% {
        width: 12px;
        height: 12px;
        opacity: .7;
        filter: alpha(opacity=70)
    }
    50% {
        width: 20px;
        height: 20px;
        opacity: .5;
        filter: alpha(opacity=50)
    }
    75% {
        width: 30px;
        height: 30px;
        opacity: .2;
        filter: alpha(opacity=20)
    }
    to {
        width: 40px;
        height: 40px;
        opacity: 0;
        filter: alpha(opacity=0)
    }
}

@-moz-keyframes leaflet-mapAni {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
        filter: alpha(opacity=1)
    }
    25% {
        width: 12px;
        height: 12px;
        opacity: .7;
        filter: alpha(opacity=70)
    }
    50% {
        width: 20px;
        height: 20px;
        opacity: .5;
        filter: alpha(opacity=50)
    }
    75% {
        width: 30px;
        height: 30px;
        opacity: .2;
        filter: alpha(opacity=20)
    }
    to {
        width: 40px;
        height: 40px;
        opacity: 0;
        filter: alpha(opacity=0)
    }
}

@-o-keyframes leaflet-mapAni {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
        filter: alpha(opacity=1)
    }
    25% {
        width: 12px;
        height: 12px;
        opacity: .7;
        filter: alpha(opacity=70)
    }
    50% {
        width: 20px;
        height: 20px;
        opacity: .5;
        filter: alpha(opacity=50)
    }
    75% {
        width: 30px;
        height: 30px;
        opacity: .2;
        filter: alpha(opacity=20)
    }
    to {
        width: 40px;
        height: 40px;
        opacity: 0;
        filter: alpha(opacity=0)
    }
}

@-ms-keyframes leaflet-mapAni {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
        filter: alpha(opacity=1)
    }
    25% {
        width: 12px;
        height: 12px;
        opacity: .7;
        filter: alpha(opacity=70)
    }
    50% {
        width: 20px;
        height: 20px;
        opacity: .5;
        filter: alpha(opacity=50)
    }
    75% {
        width: 30px;
        height: 30px;
        opacity: .2;
        filter: alpha(opacity=20)
    }
    to {
        width: 40px;
        height: 40px;
        opacity: 0;
        filter: alpha(opacity=0)
    }
}

@keyframes leaflet-mapAni {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
        filter: alpha(opacity=1)
    }
    25% {
        width: 12px;
        height: 12px;
        opacity: .7;
        filter: alpha(opacity=70)
    }
    50% {
        width: 20px;
        height: 20px;
        opacity: .5;
        filter: alpha(opacity=50)
    }
    75% {
        width: 30px;
        height: 30px;
        opacity: .2;
        filter: alpha(opacity=20)
    }
    to {
        width: 40px;
        height: 40px;
        opacity: 0;
        filter: alpha(opacity=0)
    }
}
